virtual machine structure